خرید بک لینک
درود
من یک بازی با جاوا نوشتم برای دسکتاپ. 70 درصد پیشرفت داشته.
بازی به این صورته که چند مرحله رایگان داره و بقیه مراحل در ازای پرداخت مبلغی باید از وبسرویس مربوطه بارگیری بشه.
اگر ممکنه بنده رو راهنمایی کنید چطور میتونم جلوی سوع استفاده ها بگیرم (مثلا یکی اگر چند مرحله رو رد کرد اونارو نتونه به رایگان در اختیار بقیه بزاره)

هیچ ایده ای ندارم لطفن اگر ممکنه منو راهنمایی کنید.

وبلاگ من
System.out.PrintLn("Say to Prof.James Gosling Java Never Dies ! I HATE Microsoft and its Technologies ! ");

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: جمعه 30 بهمن 1394 ساعت: 20:24

سلام.

من میخوام فرم ثبت نام رو با استفاده از ajax بنویسم . فرم رو نوشتم و به درستی در دیتابیس ثبت میشه . اما موقع استفاده از flash message پیامی در view نمایش داده نمیشه.

کد مربوط به view:


<div class="form">

<?php $form=$this->beginWidget('CActiveForm', array(
       'id'=>'user-form',
       'clientOptions'=>array(
           'validateOnSubmit'=>true,

       ),
)); ?>

       <p class="note">Fields with <span class="required">*</span> are required.</p>

       <?php echo $form->errorSummary($model); ?>

       <div class="row">
               <?php echo $form->labelEx($model,'name'); ?>
               <?php echo $form->textField($model,'name',array('size'=>60,'maxlength'=>64)); ?>
               <?php echo $form->error($model,'name'); ?>
       </div>

       <div class="row">
               <?php echo $form->labelEx($model,'url'); ?>
               <?php echo $form->textField($model,'url'); ?>
               <?php echo $form->error($model,'url'); ?>
       </div>

   

       <div class="row buttons">
              <?php echo CHtml::ajaxSubmitButton(
     'Save',
     Yii::app()->createUrl('site/ajax'),
     array(
          'type'=>'POST',
   
           )
   ); 
?>
       </div>

<?php $this->endWidget(); ?>

</div>


<div id="test"></div>
<?php
    foreach(Yii::app()->user->getFlashes() as $key=> $message) {
        echo '<div class="alert alert-'.$key.'">' . $message . "</div>n";
    }
    
    ?>



کد controller:
        public function  actionAjax(){
            $model=new Images;  
           if(isset($_POST['Images'])){
               
               $model->attributes=$_POST['Images'];
               if($model->save()){
                  Yii::app()->user->setFlash('success', "با موفقیت ثبت شد");   
               }
         
           }
      $this->render('ajax',  compact('model'));

       }

- - , .

برچسب: نویسنده: خنجی تاريخ: جمعه 30 بهمن 1394 ساعت: 13:50

سلام

بهترین و سریع ترین راه برای پردازش داده وب از صفحه سایتی مانند http://www.tsetmc.com/Loader.aspx?Pa...22189364308501 چیست؟
لطفا کامل توضیح بدهید
باسپاس

تشکر شده توسط:

باید با cURL محتوای صفحه ای که توی سایت با Ajax خونده میشه رو بخونید و پردازش کنید. داده ها خام میان و باید فرمول محاسبه مقادیر رو از روی اونها بدست بیارین. قبلاً یه پروژه برای سایت بورس نوشته بودم که ازش میخوند ولی الان در دسترسم نیست.

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: پنجشنبه 29 بهمن 1394 ساعت: 22:40

سلام و خسته نباشید به دوستان عزیز
من این تاپیک رو صرقا برای اینکه از تجربیات شما استفاده کنم میزنم.
خواهشا هر تجربه ای که در این زمینه دارین و باعث میشه کار من سریع تر و بهتر انجام بشه بگین.
تابه حال تو سایت های مختلف ثبت نام کردین و بعد از ثبت نام دیدین که یه اس ام اس به موبایل شما میاد . منم دقیقا میخوام همین کار رو انجام بدم.
میخوام بعد از ثبت نام به طرف یه اس ام اس بره و بگه که تو سات ما ثبت نام کرده.
برای اینکار باید به پنل پیامک وصل بشم.
بهترین روش برای این کار چیه؟
بهترین شرکت برای این کار کدومه که دردسر نداشته باشه و کارم بی دردسر و بدون ارور انجام بشه.
ممنون میشم تو این زمینه کمکم کنین.

تشکر شده توسط:

من چند نمونه رو امتحان کردم مشکل داشتن مثل اینترنت که قطعی داره. زیاد سخت نگیر . یکی رو استفاده کن.

تشکر شده توسط:

http://sms.ncis.ir
نام کاربری ncdemo و رمز عبور demo

توضیحات در http://www.ncis.ir/sms

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: پنجشنبه 29 بهمن 1394 ساعت: 22:40

هدف از ایجاد این تاپیک ،انتشار مقالات طراحی سایت ، سئو ، بازاریابی اینترنتی ، اعتماد سازی ، مشتری مداری و ... به صورت خلاصه و مفید میباشد .

شرکت ایفانت با خدمات طراحی سایت و سئو با بهترین کیفیت و هزینه مناسب در خدمت شماست.

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: چهارشنبه 28 بهمن 1394 ساعت: 16:40

سلام و خسته نباشید به دوستان عزیز
به این آدرس ی سر بزنید.
http://www.sjji.ir/smn/
همونطور که میبینید فایل css اجرا نمی شود.
علتش رو نمیدونم؟
فایل css کل پروژه اجرا نمیشه.
فایل css پروژه تو آدرسی که دادم موجود هستش ولی نمدونم چرا اجرا نمیشه.
بنظرتون مشکل از کجاست؟
ممنون

تشکر شده توسط:

کد htaccess. اگه دارین بگذارین. وقتی توی سورس روی لینک CSS کلیک میکنیم ریدایرکت میشیم به این صفحه:
http://www.sjji.ir/index.php

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: سه شنبه 27 بهمن 1394 ساعت: 16:01

سلام دوستان

کسی کدی امتحان کرده که جواب گرفته باشه و تونسته باشه یه عکس رو از طریق PHP به اکانته خودش تو اینستاگرام ارسال کنه ؟؟؟

من بعد از جستجوی زیاد به این کدها رسیدم ولی مشکل داره , اول که ارور Fail رو میداد و بعد که درستش کردم هیچ خروجی بهم نمیده , کسی می دونه مشکلش چیه یا نمونه ای سراغ دارید که جواب گرفته باشید ؟؟

ممنون میشم کمک کنید

<?php
function SendRequest($url, $post, $post_data, $user_agent, $cookies) {
   $ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i.instagram.com/api/v1/'.$url);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);

if($post) {
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
}

if($cookies) {
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt'); 
} else {
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
}

$response = curl_exec($ch);
$http = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

retu array($http, $response);
}

function GenerateGuid() {
retu sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x', 
mt_rand(0, 65535), 
mt_rand(0, 65535), 
mt_rand(0, 65535), 
mt_rand(16384, 20479), 
mt_rand(32768, 49151), 
mt_rand(0, 65535), 
mt_rand(0, 65535), 
mt_rand(0, 65535));
}

function GenerateUserAgent() { 
$resolutions = array('720x1280', '320x480', '480x800', '1024x768', '1280x720', '768x1024', '480x320');
$versions = array('GT-N7000', 'SM-N9000', 'GT-I9220', 'GT-I9100');
$dpis = array('120', '160', '320', '240');

$ver = $versions[array_rand($versions)];
$dpi = $dpis[array_rand($dpis)];
$res = $resolutions[array_rand($resolutions)];

retu 'Instagram 4.'.mt_rand(1,2).'.'.mt_rand(0,2).' Android ('.mt_rand(10,11).'/'.mt_rand(1,3).'.'.mt_rand(3,5).'.'.mt_rand(0,5).'; '.$dpi.'; '.$res.'; samsung; '.$ver.'; '.$ver.'; smdkc210; en_US)';
}

function GenerateSignature($data) {
retu hash_hmac('sha256', $data, 'b4a23f5e39b5929e0666ac5de94c89d1618a2916');
}

function GetPostData($filename) {
if(!$filename) {
echo "The image doesn't exist ".$filename;
} else {
$post_data = array('device_timestamp' => time(), 
'photo' => '@'.$filename);
retu $post_data;
}
}



// Set the useame and password of the account that you wish to post a photo to
$useame = 'user';
$password = '123';

// Set the path to the file that you wish to post.
// This must be jpeg format and it must be a perfect square
$filename = '1.jpg';

// Set the caption for the photo
$caption = "Test";

// Define the user agent
$agent = GenerateUserAgent();

// Define the GuID
$guid = GenerateGuid();

// Set the devide ID
$device_id = "android-".$guid;

/* LOG IN */
// You must be logged in to the account that you wish to post a photo too
// Set all of the parameters in the string, and then sign it with their API key using SHA-256
$data = '{"device_id":"'.$device_id.'","guid":"'.$guid.'","useame":"'.$useame.'","password":"'.$password.'","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}';
$sig = GenerateSignature($data);
$data = 'signed_body='.$sig.'.'.urlencode($data).'&ig_sig_key_version=4';
$login = SendRequest('accounts/login/', true, $data, $agent, false);

if(strpos($login[1], "Sorry, an error occurred while processing this request.")) {
   echo "Request failed, there's a chance that this proxy/ip is blocked";
} else { 
if(empty($login[1])) {
echo "Empty response received from the server while trying to login";
} else { 
// Decode the array that is retued
$obj = @json_decode($login[1], true);

if(empty($obj)) {
echo "Could not decode the response: ".$body;
} else {
   // Post the picture
   $data = GetPostData($filename);
   $post = SendRequest('media/upload/', true, $data, $agent, true); 

   if(empty($post[1])) {
   echo "Empty response received from the server while trying to post the image";
   } else {
       // Decode the response 
   $obj = @json_decode($post[1], true);

   if(empty($obj)) {
   echo "Could not decode the response";
   } else {
   $status = $obj['status'];

   if($status == 'ok') {
                       // Remove and line breaks from the caption
   $caption = preg_replace("/r|n/", "", $caption);

   $media_id = $obj['media_id'];
   $device_id = "android-".$guid;

  $data = json_encode(array(
“device_id” => $device_id,
“guid” => $guid,
“media_id” => $media_id,
“caption” => $caption,
“device_timestamp” => time(),
“source_type” => 5,
“filter_type” => 0,
“extra” => array(),
“Content-Type” => “application/x-www-form-urlencoded; charset=UTF-8”
));

   $sig = GenerateSignature($data);
   $new_data = 'signed_body='.$sig.'.'.urlencode($data).'&ig_sig_key_version=4';

                       // Now, configure the photo
                       $conf = SendRequest('media/configure/', true, $new_data, $agent, true);

   if(empty($conf[1])) {
echo "Empty response received from the server while trying to configure the image";
   } else {
   if(strpos($conf[1], "login_required")) {
   echo "You are not logged in. There's a chance that the account is baed";
   } else {
   $obj = @json_decode($conf[1], true);
   $status = $obj['status'];

   if($status != 'fail') {
   echo "Success";
   } else {
   echo 'Fail';
   }
   }
   }
   } else {
   echo "Status isn't okay";
   }
   }
   }
   }
   }
}






?>

- - , .

برچسب: نویسنده: خنجی تاريخ: سه شنبه 27 بهمن 1394 ساعت: 16:01

سلام . من برای تعیین وضعیت یک SMS از تابع زیر استفاده میکنم:
$soapClient->SendSms($parameters)->SendSmsResult;

اما مشکل اینه که برای شماره هایی هم که اصلا وجود نداره باز هم مقدار 1 رو بر میگردونه؟

تابعی برای اعتبار سنجی شماره تلفن کاربر وجود داره ؟

مثلا میخوام اگر یه مقدار غیر واقعی مثل 123456 رو وارد کرد و پیامک ارسال نشد. تابع تشخیص بده

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: سه شنبه 27 بهمن 1394 ساعت: 16:01

اگر عناصری داشته باشیم که از نظر معنایی و سئو برایمان مهم باشد، آیا می توانیم آنها را داخل تگ های و ... قرار داد؟
مثلا به این شکل:

<h1><input ... /></h1>
یا
<h1><select><option ... /><option ... /></select></h1>

اگر پاسخ منفی است چه راهکاری وجود دارد؟

تشکر شده توسط:

بهتره اینکار رو نکنید. توی تگهای Heading فقط متن بگذارین. میتونید توی تگ بگذارین و با JS مخفی کنید تا فقط تگ input که خارج از متن هست بمونه. البته این روشها جزو Dark SEO هستن و توصیه نمیشن. سعی کنید منطقی و بدون فریبکاری سایت رو طراحی کنید. توی این مدل SEO سایت برای بازدیدکننده جذاب درست میشه نه برای موتور جستجو. موتورهای جستجو هم اینقدر هوشمند شدن که سایتی که برای کاربران جذاب باشه رو به شکل مناسبی رتبه بندی کنن.

ممنون از پاسختون.
نه اگه میگید اصولی نیست انجام نمیدم.
فقط راهکار دیگه ای وجود داره؟ مثلا یک کتابی داریم که کاربر سرفصل هاش رو از داخل تگ <select> انتخاب می کنه و وقتی انتخاب شد این سرفصل جای دیگه ای نمایش داده نمیشه و فقط داخل همون تگ <select> نمایش داده میشه.

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 23:46

روی این ارور میده :

کد:

$values->field_id

$id=intval($_GET['id']);

       $model=Objects::find()->where(['id' => $id])->One();
       if($values=Fieldsrelationship::find()->where(['object_id' => $id])->All()){
         $fields=Fields::find()->where(['id' => $values->field_id])->All();
         retu $this->render('show',['post'=>$model,'fields'=>$fields,'values'=>$values]);
       }

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 23:46

امروز یکی از دوستان نیاز داشتن که نمودار دایره ای با PHP بکشن. این شد که تصمیم گرفتم یه کلاس برای این کار بنویسم. کد کلاس:
<?php
class PIE
{
    private $im;
    private $width;
    private $height;
    private $bg;
    private $colors;
    private $values;
    private $angles;

    public function __construct($width = 300, $height = 300)
    {
        $this->im = ImageCreateTrueColor($width, $height);
        $this->width = $width;
        $this->height = $height;
        $this->bg = ImageColorAllocate($this->im, 255, 255, 255);
        $this->colors = [];
        $this->values = [];
        $this->angles = [];
    }

    public function setBackgroundColor($red, $green, $blue)
    {
        $this->bg = ImageColorAllocate($this->im, $red, $green, $blue);
    }

    public function add($value, $color = null)
    {
        $this->values[] = floatval($value);
        $this->colors[] = is_null($color) ? $this->generateRandomColor() : ImageColorAllocate($this->im, $color[0], $color[1], $color[2]);
    }

    public function render()
    {
        $this->draw();
        ob_start();
        ImagePNG($this->im);
        $imageData = ob_get_clean();
        retu 'data:image/png;base64,' . base64_encode($imageData);
    }

    public function saveAs($fileName)
    {
        $this->draw();
        ImagePNG($this->im, $fileName . '.png');
    }

    public function __destruct()
    {
        ImageDestroy($this->im);
    }

    private function draw()
    {
        $this->fillBackground();
        $this->calculateStartEndAngles();
        foreach($this->values as $key => $value) {
            $this->drawArc($value, $this->colors[$key], $this->angles[$key]['start'], $this->angles[$key]['end']);
        }
    }

    private function fillBackground()
    {
        ImageFilledRectangle($this->im, 0, 0, $this->width, $this->height, $this->bg);
    }

    private function generateRandomColor()
    {
        retu ImageColorAllocate($this->im, rand(0, 255), rand(0, 255), rand(0, 255));
    }

    private function drawArc($value, $color, $start, $end)
    {
       $w = $this->width / 2;
       $h = $this->height / 2;
        ImageFilledArc($this->im, $w, $h, $w, $h, $start, $end, $color, IMG_ARC_PIE);
    }

    private function calculateStartEndAngles()
    {
        $this->angles = [];
        $total = array_sum($this->values);
        $start = 0;
        foreach($this->values as $value) {
            $angle = ($value / $total) * 360;
            $this->angles[] = ['start' => $start, 'end' => $start + $angle];
            $start += $angle;
        }
    }
}

این هم مثالی از نحوه استفاده از کلاس فوق:
<?php
require_once 'PIE.php';
$pie = new PIE(500, 500);
$pie->add(30, [255, 0, 0]);
$pie->add(40, [0, 255, 0]);
$pie->add(100, [0, 0, 255]);
$pie->add(200);
?>
<!doctype html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>PIE Chart with PHP</title>
    </head>
    <body>
        <img src="<?= $pie->render() ?>" />
    </body>
</html>

تصویر خروجی رو ضمیمه کردم.

از مزایای این کلاس، امکان تعیین رنگ دلخواه برای هر بخش از نمودار و یا اجازه دادن به کلاس برای تولید رنگ تصادفی هست. همچنین محدودیتی در تعداد قطاعهای نمودار (تعداد مقادیر) وجود نداره. همچنین رنگ پس زمینه و ارتفاع و پهنای نمودار رو هم میتونید مشخص کنید. یکی دیگه از مزایای این کلاس اینه که میتونید خروجی رو هم توی فایل ذخیره کنید (متد saveAs) و هم مستقیماً نمایش بدین (متد render).

اگه درمورد نحوه کار و کدنویسی کلاس سؤالی بود در خدمتم.

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 19:00

سلام دوستان

یه مشکل واسم پیش اومده که وقتمو خیلی گرفته
بنده از تابع remove در جی کوئری برای حذف عناصر استفاده می کنم

کد:

$("a").click(function(){
if (this.attr("id") == "delete") {
r = window.confirm("Do you really want to remove ?");
if (r) $(this).parent().remove();
}
});


, تابعی که برای این کار نوشتم برای کد های اچ تی ام الی که از سرور زمان درخواست کاربر لود میشن مشکلی نداره و عناصر رو حذف می کنه اما وقتی می خوام یک سری کدهای اچ تی ام ال رو به صفحه اضافه کنم اصلا وارد تابع حذف نمیشه و اصلا انگار نمی بینتش , حتی alert هم که می گیرم انگار نمی بینتش ...
چی کار کنم برای کدهای اچی تی ام الی که بعدها به صفحه اضافه میشه این تابع کار کنه ؟؟؟

ممنون

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 19:00

سلام
میخواستم ببینم کار این چی هست
و چرا ما this->enableCsrfValidation = false
کردیم
در ویوئوی آموزشی آمده بود نباید کلش false بشه و فقط یک قسمتش باید false بشه ولی ما چون وقت نداریم کلش را false قرار میدیم
حالا اینجا میشه توضیح بدید نحوه کارایی اش رو و مکانیزم عملی اش رو ؟
ممنون

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 7:45

نیازمند همچین کلاسی هستیم :

امنیت مهم ترین اصل هست که کاملا رعایت شود
تغییر نام فایل ها در هنگام آپلود ، تکراری نباشد
امکان آپلود چند فایل که بتوان اضافه نمود
اخطار در صورت پسوند غیر مجاز و تعیین پسوند های مجاز
اخطار در صورت رعایت نکردن حجم و تعیین حداکثر حجم
آپلود نشدن فایل بر روی سرور تا زمانی که همه فایل های آپلودی توسط کاربر صحیح باشند . ( برای مثال 4 فایل باید آپلود شود ، اگر یکی از آنها دارای پسوند یا حجم غیر مجاز بود ، 3 فایل دیگر نیز بر روی هاست Move نشوند )
نمایش نام فایل ، آدرس فایل پس از آپلود کامل

با تشکر

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 7:45

سلام دوستان من یک فرم دارم که توی ان یکسری دسته هست و هر دسته یک سری داره به صورت زیر : حالا توی کنترولر نیاز به ای دی ان فیلد ها دارم

یک dropdownlist هست که دسته ها را داره بعد با ajax دارم از کنترولر اطلاعات فیلد مربوط به ان دسته را میگیرم و برای یک input text میسازم حالا مشکل اینجاست که توی دیتابیس باید ریلیشن باشه و field_id که از جدول fields هست را برام برگردونه

ساختار دیتابیس : fields (id- name- latin_name) fieldsrelation(id- fields_id - field_value) in sakhtaresh hast

مسخره ترین راه این هست که id را هم در یک input بگذارم که واقعا غیر حرفه ای هست راه دیگه میتونه کوکی یا session باشه که انم معلوم نیست تعداد فیلد ها چقدر بشه و قابل قبول نیست راه بعدی اجاکس هست که ایده خاصی براش ندارم.
ای دی میده مساله جور دیگه ای هست یک dropdownlist دسته ها توش هست ما با اجاکس گفتیم هر وقت تغییر داد دسته را بره از جدول fields اسم فیلدش رابخونه و بعد بر اساس ان یک input text بسازیم با همون اجاکس و نمایش بدیم که اینکار برای هر تعداد فیلد مربوط به ان دسته انجام میشه حالا مشکل اینجاست که ما اینجا محتوای ان فیلد را با Input میتونیم بخوینم اما دیتابیس ریلشن داره و نیاز به fields_id هم هست بر اساس دیتایسی ک قبل گفتم حالا یک راه این هست که کنار هر input که میسازم بگم یک input hidden باشه که id ارسال کنه اما راه اصولی نیست دنبال راه بهترم ؟
فرم :

<?php
use yiihelpersHtml;
use yiiwidgetsActiveForm;
use appmodelsFields;
use appmodelsFieldsrelationship;

$form = ActiveForm::begin([
   'id' => 'object-add',
   'options' => [
 'class' => 'form-horizontal',
 'enctype' => 'multipart/form-data'
 ],
])?>
<?= $form->field($model, 'object_type_id')->dropdownlist([['prompt'=>'نوع شی دیجیتال را انتخاب کنید'],$objectstype]) ?>
<?= $form->field($model, 'title') ?>
<?= $form->field($model, 'description')->textarea() ?>

<?= Html::submitButton('ثبت شی دیجیتال',['class'=>'btn btn-primary']) ?>
<?php ActiveForm::end();
$js=<<<Js
var URL="http://localhost/digifile/";
$('#objects-object_type_id').change(function(e){
e.preventDefault();
e.stopImmediatePropagation();
$.post(URL+"fields/getfields",{getfields:'true',object_type_id:$(this).val()},function(res){
   res=JSON.parse(res);
   if(res!=[])
   {
      $('.hasremove').remove();
      for(var i=0;i<res.length;++i)
     {
       $('.field-objects-description').after('<div class="form-group field-fieldsrelationship-'+res[i].latin_name+' hasremove"><label class="control-label" for="fieldsrelationship-'+res[i].latin_name+'">'+res[i].name+'</label><input type="text" id="fieldsrelationship-'+res[i].latin_name+'" class="form-control" name="fieldsrelationship['+res[i].latin_name+']"><div class="help-block"></div></div>');
     }
   }
   else
   {

   }

});
 retu false;
});

Js;
$this->registerJs($js);
?>

کنترولر ها :

کنترولرذخیره سازی فرم :

<?php

namespace appcontrollers;
use Yii;
use appmodelsObjects;
use appmodelsObjectTypes;
use appmodelsPayments;
use appmodelsFieldsrelationship;
use yiihelpersArrayHelper;

class ObjectsController extends yiiwebController
{
   public function actionIndex()
   {
       $objects=Objects::find()->All();
       retu $this->render('index',array('objects'=>$objects));
   }
   public function actionAdd()
   {
     $jdf=Yii::$app->jdf->date('Y m d h:i:s');
     $model=new Objects;
     $fields = new Fieldsrelationship;
     $model->user_id='1';
     $model->submit_date=$jdf;
     $model->status='0';
     if(isset($_POST['Objects']) && isset($_POST['fieldsrelationship'])){
       $model->attributes=$_POST['Objects'];
       if ($model->load(Yii::$app->request->post()) && $model->save())
       {
          $fields->attributes=$_POST['fieldsrelationship'];
          var_dump($_POST['fieldsrelationship']);
         //  foreach ($_POST['fieldsrelationship'] as $myfield)
         //  {
           //  $fieldsrelation=Fields::find()->where('')->One();
            $fields->object_id = $model->id;
           //  $fields->field_id = $fieldsrelation->id;
             $fields->field_id = '5';
             $fields->field_value =$_POST['fieldsrelationship']['story'];
             $fields->save();
         //  }
       // retu $this->redirect(['index', 'id' => $model->id]);
       }
     }
     else {

             $objectstype=ObjectTypes::find()->All();
             $objectstype=ArrayHelper::map($objectstype,'id','name');
               retu $this->render('add',
             ['model'=>$model,'fields'=>$fields,'objectstype' => $objectstype]);

       }



   }
   public function actionShow()
   {
       $id=intval($_GET['id']);
       $model=Objects::find()->where(['id'=>$id])->One();
       retu $this->render('show',['post'=>$model]);
   }
   public function actionDownload()
{
 $id=intval($_GET['id']);
 $model=Objects::find()->where(['id'=>$id])->One();
   retu Yii::$app->response->sendFile($model->file);
}
public function actionPay()
{
   $session=Yii::$app->session;
   $session->open();
   $model=new Payments();
   if($model->load(Yii::$app->request->post()))
   {
       $model->submit_date=Yii::$app->formatter->asTimestamp(date('Y-m-d h:i:s'));
       $model->status='0';
       $model->price=$_SESSION['price'];
       $model->object_id=$_SESSION['object_id'];

       $Coection=Yii::$app->db;
       $sql=$Coection->createCommand("SELECT * FROM do_settings WHERE setting_name='pay'")->queryOne();
       unset($_SESSION['object_id']);
       unset($_SESSION['price']);
       if($sql['setting_value']=='payline')
       {
           $this->layout='location';
           $result=Payline::pardakht($model->price);
           if($result>0 && is_numeric($result))
           {
               $model->id_get=$result;
               if($model->save())
               {
                   $url="http://payline.ir/payment-test/gateway-$result";
                   ?>
                   <script>
                       window.location='<?= $url ?>';
                   </script>
               <?php
               }

           }
       }
       else
       {

           $model->setting_name='mellat';
           require_once 'components/nusoap.php';
           $bank_mellat=new bank_mellat();
           $res=$bank_mellat->pay($model->price);
           if($res)
           {
               $model->RefId=$res;
               $model->save();
               retu $this->render('location',array('res'=>$res));
           }
           else
           {
               retu $this->render('location',array('msg'=>'در اتصال به درگاه بانک مشکلی بیش آمده لطفا دوباره امتحان کنید'));
           }
       }


   }
   else
   {
       retu $this->render('location',array('model'=>$model));
   }

}




}

مدل ها :
مدل fields نام فیلد ها را ذخیره میکنه .
<?php

namespace appmodels;

use Yii;

// public $id;
// public $name;
// public $object_type_id;

class Fields extends yiidbActiveRecord
{
   /**
    * @inheritdoc
    */
   public static function tableName()
   {
       retu '{{do_fields}}';
   }

   /**
    * @inheritdoc
    */
   public function rules()
   {
       retu [
           [['name', 'object_type_id','latin_name'], 'required','message'=>'لطفا فیلد {attribute} را وارد کنید'],
           [['object_type_id'], 'integer'],
           [['name','latin_name'], 'string', 'max' => 256]
       ];
   }

   /**
    * @inheritdoc
    */
   public function attributeLabels()
   {
       retu [
            'id' => 'ID',
            'name' => 'نام فیلد به فارسی',
            'latin_name' => 'نام فیلد به انگلیسی',
            'object_type_id' => 'نوع شی دیجیتال',
        ];
   }
}

مدل fields_relation : ذخیره سازی محتوای فیلد ها :
<?php

namespace appmodels;

use Yii;

/**
* This is the model class for table "do_fields_relationship".
*
* @property string $id
* @property string $object_id
* @property string $field_id
* @property string $field_value
*/
class Fieldsrelationship extends yiidbActiveRecord
{
   /**
    * @inheritdoc
    */
   public static function tableName()
   {
       retu 'do_fields_relationship';
   }

   /**
    * @inheritdoc
    */
   public function rules()
   {
       retu [
           [['object_id', 'field_id', 'field_value'], 'required'],
           [['object_id', 'field_id'], 'integer'],
           [['field_value'], 'string', 'max' => 256]
       ];
   }

   /**
    * @inheritdoc
    */
   public function attributeLabels()
   {
       retu [
            'id' => 'ID',
            'object_id' => 'Object ID',
            'field_id' => 'Field ID',
            'field_value' => 'Field Value',
        ];
   }
}

بهترین راه برای دریافت field_id را بگید لطفا ؟

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 26 بهمن 1394 ساعت: 7:45

میدونید که روش استاندارد چند زبانه کردن در اندروید با استفاده از فایل strings.xml است.
مثلا وقتی زبان انگلیسی باشه رشته های داخل برنامه از فایل strings.xml واقع در دایرکتوری res/values خونده میشن، ولی وقتی زبان فارسی باشه رشته ها از فایل strings.xml واقع در دایرکتوری res/values-fa خونده میشن.
روش درج این رشته ها در برنامه رو هم که میدونید به این شکل هست که از @string/string_name استفاده میکنیم و در کد جاوا هم میتونیم از getResources().getString(R.string.string_name) استفاده کنیم.

اما وقتی رشته های ما در جای دیگری باشن چطور؟

مثلا برنامهء من اینترفیس تحت مرورگر داره، یعنی از طریق مرورگر وب روی PC با برنامهء روی گوشی ارتباط برقرار میکنیم. بنابراین برنامه یکسری کد HTML رو به مرورگر ارسال میکنه.

حالا سوال اینه که بنظرتون چه روشی برای چند زبانه کردن این اینترفیس های HTML مناسبه؟
چون ما که نمیتونیم در این صفحات HTML (که من توی پوشهء raw ذخیره کردمشون) از @string/string_name استفاده کنیم.
البته من تست کردم یک پوشهء raw-fa هم اگر ایجاد کنیم، اونوقت وقتی زبان فارسی هست بطور خودکار فایلهای HTML موجود در این پوشه بجای اونایی که توی raw هستن خونده میشن؛ دقیقا مثل values و values-fa. ولی من نمیخوام از کل هر فایل HTML دو نسخه یکی به زبان انگلیسی و دیگری به زبان فارسی داشته باشم، چون این روش افزونگی بیش از حد داره بنظرم و تغییرات و نگهداری برنامه رو مشکل میکنه.

یه فکری که الان بنظرم میرسه اینه که فقط رشته ها رو بصورت متغییرهای جاوااسکریپت در فایلهای js که توی پوشهء raw و raw-fa میذارم ذخیره کنم و بعد در هر فایل HTML، این فایل js مربوط به رشته ها رو لود میکنم و توسط جاوااسکریپت رشته ها رو هرکدام در جای خودشون در سورس HTML قرار میدم.
شاید تنها اشکالی که بشه به این روش گرفته وابسته بودنش به جاوااسکریپت هست، اما بنظرم این امروزه دیگه مسئله ای نیست و ساپورت جاوااسکریپت امروزه جزو امکانات پایه برای خیلی سایتها و نرم افزارها محسوب میشه و دیگه گذشت دورانی که بگیم باید برنامه بدون جاوااسکریپت هم قابل استفاده باشه.

برچسب: نویسنده: خنجی تاريخ: يکشنبه 25 بهمن 1394 ساعت: 23:20

سلام آقای شهرکی

در پکیج آموزشی قسمت ساخت فریمورک یک کلاس view تعریف کردید با یکسری پارامتر مثل get و setTemplate
ولی از اونا استفاده نکردین و برای لود ویو از متد رندر کنترلر استفاده کردین
دلیل خاصی داشتین برای این کار؟ با این حساب اون متدهای ویو چه کاربردی دارند؟
ممنون

برچسب: نویسنده: خنجی تاريخ: يکشنبه 25 بهمن 1394 ساعت: 23:20

سلام
logout رو لوکال درست کار می کنه
ولی رو هاست اررور می ده
Method Not Allowed. This url can only handle the following request methods: POST
<?= Html::a(
    '( ' . yii::$app->user->identity->useame . ' )' . 'خروج',
    yiihelpersUrl::toRoute(['site/logout']),
    ['data-method' => 'post']) ?>

برچسب: نویسنده: خنجی تاريخ: يکشنبه 25 بهمن 1394 ساعت: 23:20

سلام و خسته نباشید به دوستان عزیز
من یه مقادیری دارم که میخوام با هاشون نمودار دایره ای ساده با php درست کنم.
مقادیر من به این شکل هستش.
34
19
27
91
17
41

من با استفاده از توابع gd خودم میتونم نمودار میله ای درست کنم.
ولی چون مشتری درخواست نمودار دایره ای کرده ، مجبورم نمودار دایره ای درست کنم.
تو اینترنت خیلی سرچ کردم و به کتابخونه های آماده پولی رسیدم.
خواستم ببینم برای ساخت نمودار دایره ای روش های ساده تری هم هستش.
آیا تابعی برای این کار وجود داره؟
آیا تا به حال نموددار دایره ای ساختین؟
ممنون میشم تو این زمینه راهنماییم کنین.

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: شنبه 24 بهمن 1394 ساعت: 13:24

Question

سلام
میخواستم بدونم پس زمینه هایی شبیه پس زمینه صفحه لاگین برنامه اینستاگرام و چطوری درست میکنن ؟

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: جمعه 23 بهمن 1394 ساعت: 23:08

وبسایت دو زبانه شرکت بصاکو طراحی شده توسط شرکت نرم افزاری رمینو

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: جمعه 23 بهمن 1394 ساعت: 23:08

وبسایت شرکت مائده شیرین کیش طراحی و برنامه نویسی شده توسط شرکت نرم افزاری رمینو

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: جمعه 23 بهمن 1394 ساعت: 23:08

با سلام

در حال ساخت یک فایل منیجر با php هستم . در این فایل منیجر قصد داریم حجم ترافیک مصرفی کاربران را محاسبه کنیم.
آدرس های فایل ها به صورت مجازی و توسط php خواهد بود تا امکان محاسبه میزان مصرف و حجم مصرفی مشخص شود.
لطفا نظرتون رو درباره بهترین راهکار ساخت همچین پروژه ای بفرمایید.

با تشکر

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: پنجشنبه 22 بهمن 1394 ساعت: 21:41

سلام :)
توضیحش یه ذره سخته ...
من یه سری پست دارم که بعضی ها رو بنابر دلایلی نباید نشون بدم (بلاک کردن این پست ها توسط کاربر)
حالا چندتا راه جلوم هست ... یک اینکه بیام وقتی سلت رو زدم با تابع مای اس کیو ال not in اون مقادیر رو ازش حذف کنم ...که با توجه به پروژه ام یه ذره کارش سخته ...
دومین راه اینه که بیام و بعد از find این مقادیر رو از result حذف کنم.
البته هر دو راه تقریبا شبیه همن ولی دومی واسه من بهتره ...
حالا مشکل اینه که چجوری این کارو انجام بدم ....
  function afterFind()

   {
       $blockPost=block::find()->where(['user_id'=>$id])->all();
     retu  $this->find()->where('not in','id',$blockPost);

   }

باید یه همچین چیزی باشه ...

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: پنجشنبه 22 بهمن 1394 ساعت: 2:23

سلام
من می خوام یکی اکشن ها بصورت مستقل لود بشه و از layouts لود نشه باید چکار بکنم ؟
از renderPartial نمیشه استفاده کرد چون این صفحه استایل ها و کد های مخصوص خودش رو دارد

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: سه شنبه 20 بهمن 1394 ساعت: 7:16

سلام
من می خوام زمانی که وارد پوشه پروژه ام میشم در yii2 فایل ایندکس frontend/web اجرا بشه
باید چطوری این کار رو انجام بدم ؟

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: سه شنبه 20 بهمن 1394 ساعت: 7:16

سلام.

بعد از افزودن htaccess. و urlManager به پروژه، urlها بصورت زیر تغییر کرد:


http://localhost/shopping/products/view/1.php

الان تنها مشکل موقع استفاده از دستور زیر پیش میاد:

$this->goHome();

این دستور web/ حذف شده از url را برمیگرداند و url بصورت زیر در میاید:

http://localhost/shopping/web/

در نتیجه صفحه اصلی سایت پیدا نمیشود.

لطفا راهنمایی کنید.

متشکرم.

تشکر شده توسط:

از این دستور استفاده کردم مشکل حل شد:

$this->redirect(Yii::getAlias('@web'));

تشکر شده توسط:

توی تنظیمات، homeUrl رو اصلاح کنید:
'homeUrl' => 'http://localhost/shopping/',

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 19 بهمن 1394 ساعت: 7:44

سلام
توی یه پروژه، زمان ساخت جداول جدیدتر از کوئری SET NAMES utf8 استفاده شده ولی برای جداول قدیمی تر استفاده نشده

در صفحه ای که از جداول مختلف select شده، اگر این کوئری رو اول صفحه بذاری اطلاعات جدول قدیمی ناخوانا چاپ میشه، اگر نذاری اطلاعات جدول جدیدا ناخوانا چاپ میشه

راه حلی که به ذهنم رسید این بود که ابتدای کوئری های جدول جدید همین SET NAMES رو بذارم و ابتدای کوئری های جداول قدیمی یه کوئری دیگه بذارم که اثر SET NAMES قبلی رو خنثی کنه و در واقع به حالت قبلش برگرده

دوستان همچین کوئری سراغ دارن؟
یا راه حل بهتر؟

ممنون

تشکر شده توسط:

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 19 بهمن 1394 ساعت: 7:44

یکی از نکات بسیار مهمی که در هنگام طراحی سایت و پس از آن باید به آن توجه ویژه ای شود، سئو سایت می باشد. حضور در صفحات نخست و رتبه های ابتدایی در نتایج جستجو آسان نبوده و مستلزم رعایت نکات مهمی در این زمینه می باشد. یکی از عوامل مهم و کاملا تاثیر گذار در این امر بک لینک در طراحی سایت است. بک لینک ها به عنوان معرف سایت شما از طریق سایت های دیگر (سایت هایی که از آن ها بک لینک دارید) طراحی سایت شما را به عنوان سایت منبع و مرجع برای موتور های جستجو معرفی کرده و در نتیجه آن ها نیز اهمیت زیادی به طراحی وب سایت شما داده و در کنار سایر معیار های سئو سایت مانند طراحی سایت ریسپانسیو ، طراحی سایت بر اساس اصول سئو ، استفاده از استاندارد های طراحی سایت و… باعث بهبود و کاهش رتبه سایت شما در نتایج جستجو خواهد شد.
بک لینک در طراحی سایت به دو دسته تقسیم می شوند:
1- بک لینک های dofollow

این نوع بک لینک ها از نوع دنبال شونده بوده و معنای آن ها برای موتور های جستجو این است که این نوع بک لینک ها در طراحی سایت مهم بوده و باید آن ها را دنبال کند.
2- بک لینک های nofollow

بک لینک های nofollow برای موتور های جستجو اهمیت کمتری داشته و هنگام مواجه شدن با این نوع بک لینک ها با اینکه به آن ها اهمیت می دهند ولی آن ها را دنبال نمی کنند.
ارزش بک لینک های dofollow از بک لینک های nofollow بسیار زیادتر بوده و تا جایی که امکان دارد باید بک لینک های ما از نوع dofollow باشند.

در چه جاهایی باید از بک لینک در طراحی سایت استفاده کرد؟
بک لینک ها از هر جایی می توانند به طرف سایت ما داده شوند ، ولی هرچه سایت ها معتبر تر باشند ، بک لینک ها نیز اهمیت بیشتری پیدا کرده و تاثیر زیادتری بر روی سئو سایت ما خواهند گذاشت. معمولا بک لینک گیری از سایت های معتبر سخت تر از سایر وب سایت ها می باشد ولی با توجه به هدفی که شما از طراحی سایت دارید ، این عمل با تولید محتوای آموزنده، علمی و مفید می تواند محقق شود.
فروم ها ، انجمن ها و تالار های گفتگو
شما می توانید با حضور در این مکان ها و استفاده بهینه از فرصت هایی که در اختیار شما قرار داده می شود، اقدام به بک لینک دهی نوع dofollow برای سایت خود کرده و همچنین تبلیغ و جذب بازدید کننده از آن ها نیز بپردازید.

- - , .

برچسب: نویسنده: خنجی تاريخ: دوشنبه 19 بهمن 1394 ساعت: 7:44

یکی از نکات بسیار مهمی که در هنگام طراحی سایت و پس از آن باید به آن توجه ویژه ای شود، سئو سایت می باشد. حضور در صفحات نخست و رتبه های ابتدایی در نتایج جستجو آسان نبوده و مستلزم رعایت نکات مهمی در این زمینه می باشد. یکی از عوامل مهم و کاملا تاثیر گذار در این امر بک لینک در طراحی سایت است. بک لینک ها به عنوان معرف سایت شما از طریق سایت های دیگر (سایت هایی که از آن ها بک لینک دارید) طراحی سایت شما را به عنوان سایت منبع و مرجع برای موتور های جستجو معرفی کرده و در نتیجه آن ها نیز اهمیت زیادی به طراحی وب سایت شما داده و در کنار سایر معیار های سئو سایت مانند طراحی سایت ریسپانسیو ، طراحی سایت بر اساس اصول سئو ، استفاده از استاندارد های طراحی سایت و… باعث بهبود و کاهش رتبه سایت شما در نتایج جستجو خواهد شد.
بک لینک در طراحی سایت به دو دسته تقسیم می شوند:
1- بک لینک های dofollow

این نوع بک لینک ها از نوع دنبال شونده بوده و معنای آن ها برای موتور های جستجو این است که این نوع بک لینک ها در طراحی سایت مهم بوده و باید آن ها را دنبال کند.
2- بک لینک های nofollow

بک لینک های nofollow برای موتور های جستجو اهمیت کمتری داشته و هنگام مواجه شدن با این نوع بک لینک ها با اینکه به آن ها اهمیت می دهند ولی آن ها را دنبال نمی کنند.
ارزش بک لینک های dofollow از بک لینک های nofollow بسیار زیادتر بوده و تا جایی که امکان دارد باید بک لینک های ما از نوع dofollow باشند.

در چه جاهایی باید از بک لینک در طراحی سایت استفاده کرد؟
بک لینک ها از هر جایی می توانند به طرف سایت ما داده شوند ، ولی هرچه سایت ها معتبر تر باشند ، بک لینک ها نیز اهمیت بیشتری پیدا کرده و تاثیر زیادتری بر روی سئو سایت ما خواهند گذاشت. معمولا بک لینک گیری از سایت های معتبر سخت تر از سایر وب سایت ها می باشد ولی با توجه به هدفی که شما از طراحی سایت دارید ، این عمل با تولید محتوای آموزنده، علمی و مفید می تواند محقق شود.
فروم ها ، انجمن ها و تالار های گفتگو
شما می توانید با حضور در این مکان ها و استفاده بهینه از فرصت هایی که در اختیار شما قرار داده می شود، اقدام به بک لینک دهی نوع dofollow برای سایت خود کرده و همچنین تبلیغ و جذب بازدید کننده از آن ها نیز بپردازید.

- - , .

برچسب: نویسنده: خنجی تاريخ: يکشنبه 18 بهمن 1394 ساعت: 18:15

صفحه بندی